// Copyright 2021 by 马万里. All rights reserved.
// 开发团队 ：   鸡中之霸
// 开发人员 ：   马万里
// 开发时间 ：   2021/2/24 17:55
// 文件名称 ：   resp.go
// 工程名称 ：   netpan
// 开发工具 ：   GoLand
//

package util

import (
	"encoding/json"
	"log"
)

// RespMsg: http响应数据的通用结构
type RespMsg struct {
	Code int         `json:"code"`
	Msg  string      `json:"msg"`
	Data interface{} `json:"data"`
}

// NewRespMsg: 生成response对象
func NewRespMsg(code int, msg string, data interface{}) *RespMsg {
	return &RespMsg{
		Code: code,
		Msg:  msg,
		Data: data,
	}
}

// JSONBytes: 对象转换成json格式的二进制数组
func (r *RespMsg) JSONBytes() []byte {
	bytes, err := json.Marshal(r)
	if err != nil {
		log.Println(err)
	}
	return bytes
}

// JSONString: 对象转换成json格式的字符串
func (r *RespMsg) JSONString() string {
    bytes, err := json.Marshal(r)
    if err != nil {
        log.Println(err)
    }
    return string(bytes)
}
